Guava Multimap

有时候我们需要这样的数据类型Map<String, Collection>,guava中的Multimap就是为了解决这类问题的。

Multimap提供了丰富的实现,所以你可以用它来替代程序里的Map<K, Collection>,具体的实现如下:

实现 Key实现 Value实现
ArrayListMultiamp HashMap ArrayList
HashMultimap HashMap HashSet
LinkedListMultimap LinkedHashMap LinkedList
LinkedHashMultimap LinkedHashMap LinkedHashSet
TreeMultimap TreeMap TreeSet
ImmutableListMultimap ImmutableMap ImmutableList
ImmutableSetMultimap ImmutableMap ImmutableSet

上述Multimap的实现都是线程不安全的,如果想要创建线程安全的Multimap需要调用Multimaps.synchronizedMultimap(Multimap<K, V> multimap)方法将multimap包装成线程安全的版本。

http://outofmemory.cn/java/guava/Collections/Multimaps

https://blog.csdn.net/qq_34310242/article/details/76218320